maf-pplookup-sys
Use Cases
Table of Contents
- Get Partner
- RBAC Usage
- Scheduler: Load Client Partner Mapping File
- Scheduler: Load Partner Profile XML File
- Error Response
Get Partner Details
Request:
URL : /pplookup/v1/partnerProfiles/{clientid}
Method: Get
Response Formats : JSON
Response
Expected response is 200 ok
```
Response Formats : JSON
{
"partnerUserName": "abs3pp",
"partnerPassword": "*",
"clientId": "ea99673c-4c39-4af5-8723-1f6986253efb",
"metadata": [
{
"clientIdAppName": "csitest",
"clientIdEnvironment": "DEV",
"tpspIdentifier": "",
"clientIdComments": "This is for Inital commit.",
"entryChangedBy": "rg456x",
"entryChangedDate": "11/20/2023 9:35",
"nsmResetUserId":"CONNECTX"
}
],
"originatorId": "csitest",
"isReseller": "false",
"isBusinessAllianceChannel": "false",
"ServicePolicy": [
{
"name": "INFO-RESTRICT-LEVEL",
"value": "RestrictL1"
},
{
"name": "RESTRICTED-TO-TEST-CALLS",
"value": "true"
}
],
"ServiceProviderCredentials": [
{
"system": "CAM",
"userName": "ABS3PPSYS",
"userPassword": "ABS3PPSYS;",
"CredentialPolicy": null
}
]
}
```
RBAC Usage
Client Application should have role allowPasswordsRoleName in addition to default role.
This is how it looks in JWT authentication token.
Below 2 fields only available in response
IF client app has role = allowPasswordsRoleName
- PartnerPassword and ServiceProviderCredentials[*].userPassword
Portal link to manage roles: https://apiexchange.att.com/igwSelfService/s/
"roles": [
"allowPasswordsRoleName",
"Default"
]
Note: Client Applications get "Default" role assigned on creation, which means by default SPI data(Passwords) would not be available in API Response.
Scheduler: Load Client Partner Mapping File
ClientPartnerMapping.json file maintain client & partner.
Scheduler load client mapping in object storeSample
{
"Clients": [
{
"clientID": "63546502-8de3-4ba1-b4f5-a06d222c899e",
"userName": "mvno"
},
{
"clientID": "89766502-8de3-4ba1-b4f5-a06d222c1001",
"userName": "cisco"
}
}
Path to Client Partner Mapping File: csmulenprdst01/path/partnerprofile/ClientPartnerMapping.json
NonProd Storage
Storage account: csmulenprdst01
Type: File Share (not Blob)
PLS: /subscriptions/772d47a1-8bf2-4487-afd0-96f2c5af1b42/resourceGroups/32193-Storage-Group/providers/Microsoft.Storage/storageAccounts/csmulenprdst01
Production
Storage account: csmuleprodst01
Type: File Share (not Blob)
PLS: /subscriptions/ed46e45b-e7ce-4805-8f4a-dfed28c9f8b2/resourceGroups/32193-Storage-Group/providers/Microsoft.Storage/storageAccounts/csmuleprodst01Scheduler: Load Partner Profile XML File
PartnerProfile.xml file has partners details(same file exist in CSI legacy).
Scheduler load partners details in object store
```
Path to Partner Profile File: csmulenprdst01/path/partnerprofile/PartnerProfile.xml
NonProd Storage
Storage account: csmulenprdst01
Type: File Share (not Blob)
PLS: /subscriptions/772d47a1-8bf2-4487-afd0-96f2c5af1b42/resourceGroups/32193-Storage-Group/providers/Microsoft.Storage/storageAccounts/csmulenprdst01
Production
Storage account: csmuleprodst01
Type: File Share (not Blob)
PLS: /subscriptions/ed46e45b-e7ce-4805-8f4a-dfed28c9f8b2/resourceGroups/32193-Storage-Group/providers/Microsoft.Storage/storageAccounts/csmuleprodst01
```
Scheduler Error Response
Scheduler Error
{
"code": "500",
"reason": "Scheduler Load Failed For ClientPartnerMapping.json File",
"message": "\"Exception while reading 'Binary Content' as 'application/json' cause by:\nUnexpected character ']' at root@[39:3] (line:column), expected false or true or null or {...} or [...] or number but was , while reading `root` as Json.\n \n39| ]\r\n ^\nTrace:\n at anonymous::main (line: 4, column: 1)\" evaluating expression: \"%dw 2.0\noutput application/json\n---\nread(vars.\"_clientPartnerContents\",\"application/json\")\".",
"status": "500",
"referenceError": "https://anypoint.mulesoft.com/exchange/2145bed1-5909-45bc-bbb8-1f3b6a2a0e82/maf-pplookup-sys/"
}